home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
TPUG - Toronto PET Users Group
/
TPUG Users Group CD
/
TPUG Users Group CD.iso
/
CRS
/
crs25.d81
/
sid-edtr.arc
/
SID EDITOR
(
.txt
)
< prev
Wrap
Commodore BASIC
|
2009-10-10
|
22KB
|
578 lines
1 DN=8:GOTO 9200
5 JV=PEEK(56320):JB=1-(JV AND 16)/16:JV=JV AND 15:RETURN
8 POKE CY,3:PRINT:POKE CX,18-8*AC:PRINTAC$(AC+1):RETURN
10 PRINTCHR$(19)CHR$(146)C1$;:POKE CX,25:PRINT"MEM:"FMCHR$(157)" ":RETURN
12 POKE 54283,129:POKE 54283,32:RETURN
19 V0=NT:V1=AC:V2=OC:V3=LN:V4=RS+2*SP:V5=TY:V6=1
20 H=PEEK(MM+CN):IFHAND3 THEN SP=1:RS=0:TY=0:RETURN
22 SP=0:LN=7-(HAND31)/4-.5*((HAND32)=32):TY=-((HAND64)=64)
24 H=PEEK(MM+CN+1):IF H=0 THEN RS=1:GOTO 28
26 RS=0:NT=(HAND7)-1:OC=7-(HAND56)/8:AC=(HAND192)/64-2
28 RETURN
30 POKE CY,21:PRINTC0$:POKE CX,X*5:H=PEEK(MM+CN):IF H AND 3 GOTO 36
31 IF RS THEN PRINT"(R)"Y$;:GOTO33
32 PRINTC0$NT$CHR$(ASC(AC$)+162*(ASC(AC$)=194))OC$Y$;
33 PRINTLN$LM$TY$(TY);
34 IF V6 THEN NT=V0:AC=V1:OC=V2:LN=V3:RS=V4AND1:SP=(V4AND2)/2:TY=V5:V6=0
35 RETURN
36 POKE 251,PEEK(MM+CN+1-(HAND2)/2):POKE 252,-((PEEK(MM+CN)AND3)<>1):SYS 1232
37 PRINTS$(PEEK(252)+1)Y$CHR$(157);:QI=ASC(MID$(S$,PEEK(252)+1))-65
38 IF ABS(V(QI))<90 THEN QJ=PEEK(251):GOSUB80:GOTO34
39 QJ=PEEK(MM+CN+1)+256*PEEK(251):GOSUB 80:GOTO 34
40 POKE 1216+SC,PK:SC=3:POKE 1219,1:PK=14:GOTO 510
45 GOSUB 5:IF JB=0 THEN RETURN
47 GOSUB 5:IF JB THEN 47
48 JB=1:RETURN
50 FORK=0 TO 6:AC%(AK%(ABS(K+6*(KY<0))))=(K<ABS(KY))*SGN(KY):NEXT:RETURN
60 LN$=CHR$(196+LN):LM$=CHR$(46+14*(LN=INT(LN))):RETURN
65 NT$=CHR$(67+NT+7*(NT>4)):AC$=CHR$(194+AC):OC$=RIGHT$(STR$(OC),1):RETURN
70 K=J-INT(J/256)*256:J=(J-K)/256:RETURN
80 IF QI<>2 GOTO 84
82 IF QJAND1 THEN PRINT-(11-INT(QJ/16)+12*(QJ/2AND7));:RETURN
83 QJ=INT(QJ/16)+12*(7-(QJ/2AND7)):GOTO 87
84 IFQI=9 THENQJ=(QJAND3548)/2+(QJAND255)+((QJAND256)=256)*2048:GOTO 87
85 IF QI>10 THEN ON QI-10 GOTO 88,88,90,90,91,92
86 IF V(QI)<0 THEN QJ=QJ+256*(QJ>127)
87 PRINT MID$(STR$(QJ),2+(QJ<0));:RETURN
88 IF QJ=0 THEN PRINT"N";:RETURN
89 PRINTFW$(QJ-1,QI-11);:RETURN
90 PRINTNU$(QJ,QI-13);
91 RETURN
92 QJ=QJ-256*(QJ=0):QJ=INT(14400/QJ):GOTO 87
200 REM
210 A$="":LH=0:PRINTCHR$(164)CHR$(157);
215 GET B$:IF B$="" GOTO 215
220 B=ASC(B$):IF B=13 OR B=141 THEN PRINT" ";:RETURN
230 IFB<>20 OR LH=0 GOTO 240
232 LH=LH-1:A$=LEFT$(A$,LH-(LH=0))
235 PRINTCHR$(157)" "CHR$(157)CHR$(157)CHR$(164)CHR$(157);:IF LH=0 THEN A$=""
237 GOTO 215
240 IF LH=MX-(ASC(A$+" ")=45) GOTO 215
245 IF B=45 AND (FA AND 1) AND LH=0 GOTO 270
250 IF B>47 AND B<58 GOTO 270
260 IFB<32 OR B>90 OR (FA AND 2)=0 GOTO 215
270 A$=A$+B$:LH=LH+1:PRINTB$;:POKE212,0:PRINTCHR$(164)CHR$(157);:GOTO 215
500 REM
501 IF NN<0 THEN NT=0:OC=4:LN=3:RS=0:SP=0:GOTO 507
502 IF GK=0 GOTO 507
503 TN=CN:FOR X=(TN/2-3)*(TN<5) TO 7-(4-(NN-TN)/2)*-((NN-TN)<7)
504 CN=TN-6+2*X:GOSUB19:GOSUB60:GOSUB65:GOSUB30:NEXT:CN=TN+2*(TN>NN)
505 GOSUB 20:CN=TN
507 GOSUB 555:GOSUB545
509 LQ=0
510 GOSUB5:GET K$:IF K$="" THEN K$=" ":IF JV=15 AND JB=0 GOTO 510
511 IF JB OR ASC(K$)=13 GOTO 600
512 IF JV<>15 THEN POKE 198,0:GOTO 530
513 ON ABS(ASC(K$)-132) GOTO 8000,7000,4100,4000,4050,4060
514 K=-2*(K$="+")-3*(K$="\")-4*(K$="-"):IF K>0 THEN AC=K-3:GOTO 554
515 IF K$>"@" AND K$<"H" THEN NT=ASC(K$)-67:NT=NT-7*(NT<0):RS=0:SP=0:GOTO 553
516 IF K$>"/" AND K$<"8" THEN OC=VAL(K$):RS=0:SP=0:GOTO 553
517 IF K$>"G" AND K$<"X" THEN K=KL%(ASC(K$)-72):IF K>-1 THEN LN=K:GOTO 542
518 IF K$="8" THEN LN=2:GOTO 542
519 IF K$="." AND LN >0 AND LN<6 THEN LN=INT(LN)+.5*(1-(LN*2)AND1):GOTO 542
520 IF (ASC(K$) AND 127)=20 GOTO 900
521 IF K$="R" THEN RS=1-RS:TY=0:GOSUB555:GOTO 510
522 IF K$="/" THEN TY=1-TY:RS=0:GOSUB555:GOTO 510
523 IF ASC(K$)=17 OR ASC(K$)=29 THEN JV=28-ASC(K$):GOSUB650:JV=15
524 IF K$="M" THEN LQ=1:GOTO 740
525 IF ASC(K$)=221 OR ASC(K$)=219 THEN K=220-ASC(K$):LQ=1:GOTO 725
526 IF ASC(K$)=147 GOTO 980
529 GOTO 510
530 IF JV>12 THEN RS=0:GOTO 550
535 K=.5*((JV>8)-(JV<8)):LN=LN+K:IF LN=.5 OR LN=6.5 THEN LN=LN+K
540 LN=LN+7.5*(LN>7)-7.5*(LN<0)
542 GOSUB 12:IF SP GOTO 554
543 GOSUB 545:GOTO 510
545 POKE CY,17:PRINT:POKE CX,21:IF SP THEN PRINTC0$"--"SPC(2)"-------":RETURN
547 POKE CY,17:PRINT:POKE CX,21:GOSUB 60:PRINT C0$LN$LM$SPC(2)LN$(LN):RETURN
550 NT=NT+(JV=13)-(JV=14)
552 IF NT<0 OR NT>6 THEN OC=OC-(JV=14)+(JV=13):NT=3*(1-SGN(NT))
553 AC=AC%(NT):IF SP=0 THEN GOSUB 555:GOTO 510
554 SP=0:GOSUB 555:GOSUB545:GOTO 510
555 F1=0:POKE CY,9:PRINTC0$:POKE CX,16:IF RS THEN PRINT"(R)":GOTO 567
556 IF SP THEN PRINT"---":GOTO 567
557 IF OC>7 OR (OC=7 AND NT=6 AND AC=-1) THEN OC=7:NT=6:AC=0
558 IF OC<0 OR (OC=0 AND NT=0 AND AC=1) THEN OC=0:NT=0:AC=0
559 POKE 780,(1-RS)*(NT+1+8*(7-OC)+64*(AC+2)):SYS 1396
560 POKE CY,9:POKE 54276,64:GOSUB 65:PRINT
565 POKE CX,16:PRINTC0$NT$" "AC$:POKE CY,14:PRINT:POKE CX,17
567 POKE CY,14:PRINT:POKE CX,17:IF RS OR SP THEN PRINT"-":GOTO 576
568 PRINTOC$
576 POKE CY,19:PRINT:POKE CX,9:PRINTC3$CHR$(146-128*RS)"REST"CHR$(146);
577 PRINT" <--SELECT--> "CHR$(146-128*TY)"TIE":IF F1 THEN RETURN
579 IF AL=AC AND RS=0 AND SP=0 THEN 582
580 PRINTC3$:H=AC:AC=AL:GOSUB 8:AC=H: IF RS OR SP THEN AL=2:RETURN
582 AL=AC:PRINTC1$:GOSUB 8:RETURN
600 REM
605 FG=0
610 GOSUB 5:IF JB=0 THEN 680
620 IF JV=15 THEN 610
625 FG=1:IF JV<13 GOTO 610
632 POKE 1216+SC,PK
635 K=(JV=13)-(JV=14):SC=SC+K:SC=SC-K*(SC=5):SC=SC+6*((SC>6)-(SC<1))
640 PK=PEEK(1216+SC):POKE 1216+SC,-(SC=3 OR SC=1)
645 FOR K= 1 TO 90:NEXT:GOTO 610
648 GOSUB 650:GOSUB 45:IF JBTHEN POKE 198,0:GOTO40
649 GOTO 648
650 K=-(JV<8):IF(CN+(K=0))<0 OR(CN>NN AND K=1) OR JV>11 OR IN THEN FG=1:RETURN
651 IF K=0 THEN POKE CY,21:PRINT:POKE CX,35:PRINTZ$(0);
652 POKE CY,21:PRINT:PRINTZ$(1-K);:X=K*7
656 CN=CN-2+4*K:IF CN-2=NN THEN FG=1:RETURN
658 TN=CN:IF SQ=0 THEN GOSUB 20:GOSUB 545:GOSUB 555
660 CN=CN-6-14*(JV<8):IF CN<0 OR CN>NN GOTO 670
662 GOSUB19:GOSUB60:GOSUB65:GOSUB30
670 FG=1:CN=TN:GOSUB20:RETURN
680 IF FG THEN ON SC GOTO 648,800,510,750,510,700
682 IF (FM=0 AND CN>NN) OR (LN=7 AND (TY OR RS)) GOTO 510
684 IN=IN+(IN>0):POKE MM+CN,4*(7-INT(LN))-32*(LN>INT(LN))+64*TY
686 POKE MM+CN+1,(1-RS)*(NT+1+8*(7-OC)+64*(AC+2)):GOSUB 60:GOSUB 65
687 IF M1 THEN AC%(NT)=AC
688 IF NN<CN THEN NN=NN+2:FM=FM-1:GOSUB10
689 X=3:GOSUB30:POKE 780,PEEK(MM+CN+1):SYS 1396:POKE CY,21:PRINT
690 POKE 54276,64:PRINTZ$(0);:TY=0:F1=1:GOSUB576:CN=CN+2
691 IF NN-CN<8 OR IN>4 GOTO 510
692 TN=CN:CN=CN+8:X=7:GOSUB19:GOSUB60:GOSUB65:GOSUB30:CN=TN:GOTO 510
700 REM
710 GOSUB 45:IF JB GOTO 40
715 IF JV>12 AND JV<15 GOTO 740
720 K=(JV=11)-(JV=7):IF K=0 THEN 710
725 KY=KY+K:KY=KY+15*(SGN(KY)*(ABS(KY)=8)):GOSUB12
730 POKE CY,1:PRINT:POKE CX,10:PRINTC1$ABS(KY)CHR$(157)CHR$(193-2*(KY<0));
732 PRINT" ("KY$(KY+7)")":GOTO745
740 M1=1-M1:GOSUB12:POKE CY,1:PRINT:POKE CX,30:PRINTC1$MID$("ON OFF",4-M1*3,3)
745 GOSUB 50:ON LQ+1 GOTO 710,509
750 REM
760 RS=0:GOSUB 45:IF JB GOTO 40
770 K=(JV=7)-(JV=11):IF K=0 THEN 760
775 AC=AC+K:AC=AC+3*(SGN(K))*(ABS(AC)=2):IF SP=0 THEN GOSUB 555:GOTO 760
780 SP=0:GOSUB555:GOSUB 545:GOTO 760
800 REM
810 GOSUB 45:IF JB GOTO 40
815 IF JV<>11 GOTO 825
820 RS=1-RS:TY=0:GOTO 840
825 IF JV<>7 GOTO 810
830 TY=1-TY:RS=0:GOTO840
840 IF SP=0 THEN GOSUB 555:GOTO 40
845 SP=0:GOSUB 555:GOSUB545: GOTO 40
900 REM
910 K=-(ASC(K$)=20)
920 IF CN>NN OR (FM=0 AND K=0) THEN ON SQ+1 GOTO 970,7375
923 GOSUB12:IN=IN-K*2+1:IN=IN-(IN<0)
925 IF K=0 THEN POKE CY,21:PRINT:POKECX,35:PRINTZ$(0);
927 POKE CY,21:PRINT:POKE CX,15:PRINTZ$(1-K);
930 IF K GOTO 939
932 FOR I=0 TO 2 STEP 2:J=MM+CN+I:GOSUB 70:POKE 251+I,K:POKE 252+I,J:NEXT I
936 J=NN-CN+2:GOSUB 70:POKE 781,K:POKE 782,J:SYS 1024:NN=NN+2
938 FM=FM-1:ON SQ+1 GOTO 970,7375
939 IF CN=NN GOTO 950
940 FOR I=0 TO 2 STEP 2:J=MM+CN+2-I:GOSUB 70:POKE 251+I,K:POKE 252+I,J:NEXT I
942 J=NN-CN:GOSUB 70:POKE 781,K:POKE 782,J:SYS 1024
950 NN=NN-2:FM=FM+1:IF NN-CN<8 OR IN>4 THEN ON SQ+1 GOTO 970,7375
960 TN=CN:CN=CN+8:X=7:GOSUB19:GOSUB60:GOSUB65:GOSUB30:CN=TN:ONSQ+1GOTO 970,7375
970 GOSUB10:GOTO510
980 PRINTCHR$(19)SPC(25)C1$"CLEAR TO END?"
982 GET K$:IF K$="" GOTO 982
985 IF K$<>"Y" GOTO 995
990 FOR K=1 TO 5:POKE CY,21:PRINT:POKE CX,15:PRINTZ$(0);:NEXT
992 FM=FM+(NN-CN+2)/2:NN=CN-2:IN=0
995 GOSUB 10:GOTO 510
4000 REM
4010 IF M1 THEN GOSUB 50
4015 MZ=MZ+1+1000*(MZ>999):J=MZ:GOSUB70
4020 POKE MM+CN,J*64+30:POKE MM+CN+1,K:B=1:GOTO7300
4050 K=0:GOTO 4065
4060 K=NN+2
4065 IF IN GOTO 510
4067 CN=K
4070 GK=1:SYS 1802:GOSUB10:GOTO501
4100 IF NN<2 OR IN GOTO 510
4105 PRINTCHR$(19)SPC(25)C1$"MEASURE: ";:POKECX,33
4110 FA=0:MX=3:GOSUB 200:IF A$="" THEN GOSUB 10:GOTO510
4115 J=VAL(A$):GOSUB70:POKE 1394,J*64+30:POKE 1395,K
4120 J=MM(VC):GOSUB 70:POKE 251,K:POKE 252,J
4125 J=MM(VC)+NN:GOSUB 70:POKE 1392,K:POKE 1393,J:SYS 1350
4130 CN=PEEK(251)+256*PEEK(252)-MM(VC):GOTO 4070
5000 POKE CY,3:PRINTC0$:POKE CX,10:PRINT CHR$(18)"PRESS 'Y' TO CONFIRM"
5010 GET K$:ON 1-(K$="")-2*(K$="Y") GOTO 8005,5010,5040
5040 POKE 781,237:POKE 782,246:SYS 1813:POKE 55,PEEK(1020):POKE 56,PEEK(1021)
5050 POKE 53269,0:POKE 648,4:POKE 56576,PEEK(56576)OR3:SYS 65409:CLR:END
7000 GOSUB 7905:POKE 53280,2:POKE53265,19
7001 POKE 780,24:SYS 1596
7002 POKE CY,3:PRINTC6$:POKE 53288,3:GOTO 7200
7004 PRINTC2$CHR$(147);:P$=" ":REM 19 SPACES!
7006 PRINTCHR$(18)P$P$" "CHR$(157)CHR$(148)" "CHR$(19);
7008 U1$=CHR$(18):PRINTC6$:FOR K=1 TO 10:PRINTCHR$(185);:U1$=U1$+CHR$(192):NEXT
7110 H=0:FOR K=1 TO 10:PRINT:PRINTC2$CHR$(18);:J=5-LEN(SC$(K))/2
7114 PRINTLEFT$(P$,J)SC$(K)LEFT$(P$,J+.5);CHR$(146);
7115 FOR J=1 TON(K):H=H+1:PRINT" "C0$S$(H)" ";:NEXT:PRINT:PRINTC6$U1$;:NEXT
7116 PRINTCHR$(145):FOR K=1 TO 10:PRINTCHR$(184);:NEXT
7120 POKE CY,1:PRINTC6$:FOR K=0 TO 4:POKE CX,20:PRINTCHR$(18)P$:NEXT:RETURN
7200 IF UY>9 THEN POKE 53255,0:POKE 53288,13:GOTO 7375
7201 POKE 53288,3:POKE 53264,-((UX*40)>147)*8:POKE 53254,(108+UX*40)AND255
7202 POKE 53255,59+UY*16:POKE CX,21
7205 PRINTCHR$(18)SC$(UY+1);":";SS$(NN(UY)+UX+1)RIGHT$(I$,38-POS(0));
7207 GOSUB5:GETK$:K=ASC(K$+" "):IF K<>17 AND K<>29 GOTO 7209
7208 JV=-7*(K=29)-11*(K=17):SQ=1:GOSUB650:SQ=0:POKE CY,3:PRINTC6$:GOTO 7207
7209 IF (KAND127)=20 THEN SQ=1.1:GOTO 900
7211 JV=-JV*(JV<15)-(JV=15)*(15+(K=73)+2*(K=77)+4*(K=74)+8*(K=75))
7212 IF JV<15 THEN GOSUB12:GOTO 7216
7213 IF (JB OR K$=CHR$(13)) AND NOT (FM=0 AND CN>NN) GOTO 7250
7214 IF K$<>CHR$(133) GOTO 7207
7215 POKE 53255,0:GK=0:GOTO 9000
7216 UX=UX+(JV=11)-(JV=7):UX=UX+N(UY+1)*(UX=N(UY+1))-6*(UX<0)
7217 UY=UY+(JV=14)-(JV=13):UY=UY+11*(UY=11)-11*(UY<0)
7218 IF UY>9 THEN POKE 53255,0:POKE 53288,13:GOTO 7350
7219 IF N(UY+1)<=UX THEN UX=N(UY+1)-1
7220 GOTO 7200
7250 K=ASC(MID$(S$,NN(UY)+UX+1))-65:POKE CY,1:PRINT:POKE CX,21:PRINT CHR$(18);
7255 IF K>10 THEN PRINTV$(K-11):GOTO 7265
7260 PRINT"(";-(V(K)<0)*(V(K))"TO"ABS(V(K))")"
7265 POKE CY,5:PRINT:POKE CX,21
7267 MX=LEN(STR$(ABS(V(K))))-1:FA=-(V(K)<0)
7270 PRINTCHR$(18)"ENTER:";:GOSUB 200:IF A$="" GOTO 7001
7280 J=VAL(A$):IF ABS(J)>ABS(V(K)) OR (K=16 AND J<56) GOTO 7001
7282 IF K=16 THEN J=INT(1800/J+.5)*8:J=-J*(J<256)
7283 IFK=9THENPOKEMM+CN+1,JAND255:POKE MM+CN,(JAND1792)/8+10-16*(J<0):GOTO 7300
7284 IF K<>2 THEN J=J-256*(J<0):GOTO 7289
7286 H=16*(-11*(J<0)+12*(J/12-SGN(J)*INT(ABS(J)/12)))
7287 J=INT(H+2*(-7*(J>=0)-SGN(J)*INT(ABS(J)/12))-(J<0)+.5)
7289 IF K=6 THEN MZ=J
7290 IF ABS(V(K))>90 GOTO 7295
7292 POKE MM+CN,1:POKE MM+CN+1,PEEK(1278+NN(UY)+UX)+M(K)*J:GOTO 7300
7295 J1=K:IF J<0 THEN J=-J*(V(C)+1)+1
7297 GOSUB 70:POKE MM+CN,PEEK(1278+NN(UY)+UX)+M(J1)*J:POKE MM+CN+1,K
7300 IF NN<CN THEN NN=NN+2:FM=FM-1:IF B=1 THEN GOSUB 10
7303 IN=IN+(IN>0)
7305 POKECY,22:PRINT:POKECX,16:PRINT" ";
7310 X=3:GOSUB30:POKE CY,21:PRINT:PRINTZ$(0);:CN=CN+2
7315 IF NN-CN<8 OR IN>4 GOTO 7320
7316 TN=CN:CN=CN+8:X=7:GOSUB19:GOSUB60:GOSUB65:GOSUB30:CN=TN
7320 ON1-(B=13)-2*(B=1) GOTO 7001,7215,510
7350 POKE CX,21:PRINT" ";
7355 GOSUB5:GETK$:K=0:IFK$<>"" THEN K=ASC(K$):K=K-57*(K=17)-46*(K=29)
7356 JV=-JV*(JV<15)-(JV=15)*(15+(K=73)+2*(K=77)+4*(K=74)+8*(K=75))
7357 IF JV=7 OR JV=11 THEN SQ=1:GOSUB 650:SQ=0:POKE CY,3:PRINTC6$:GOTO 7355
7358 IF JV=13 OR JV=14 THEN FOR K=1 TO 100*-(K$=""):NEXT:GOSUB12:GOTO 7217
7360 IF K$<>"" THEN IF (ASC(K$)AND127)=20 THEN SQ=1:GOTO 900
7365 IF K$=CHR$(133) GOTO 7215
7370 GOTO 7355
7375 K=SQ:SQ=0:POKE CY,3:PRINTC6$:ON 1-(K>1) GOTO 7355,7207
7500 NV(VC)=NN:CN(VC)=CN
7510 IF VC=3OR(VC=2 AND NV(3)=-2)OR(VC=1 AND NV(2)=-2 AND NV(3)=-2) GOTO 7530
7520 J=K5-NV(3)-4+(VC=1)*(NV(2)+4):GOSUB 70:POKE 251,K:POKE 252,J
7525 J=MM(1)+NV(1)+4-(VC=2)*(NV(2)+4):GOSUB 70:POKE 253,K:POKE 254,J
7527 J=NV(3)+4-(VC=1)*(NV(2)+4):GOSUB 70:POKE 781,K:POKE 782,J:SYS 1024
7530 MM(2)=MM(1)+NV(1)+4:MM(3)=MM(2)+NV(2)+4
7535 GOSUB 8690
7900 POKE 241,PEEK(241)OR128:POKE 53251,0:POKE 53281,10
7905 POKE 1140,255:POKE 1145,240:POKE 1160,K8:POKE 1165,K9:SYS 1138
7910 POKE 53280,10:POKE53281,1:POKE53249,0:POKE 53253,0:RETURN
8000 IF IN GOTO 510
8001 GOSUB 7500
8005 POKE 780,9:SYS 1596:POKE 53269,0:GOTO 8225
8010 P$=CHR$(18)+" "
8015 P1$=CHR$(162):FOR K=1 TO 4:P1$=P1$+P1$:NEXT:P1$=P1$+LEFT$(P1$,6)
8020 P2$=CHR$(192):P2$=P2$+P2$+P2$:P2$=P2$+P2$+P2$+P2$
8100 PRINTCHR$(147);
8110 FOR K=1 TO 6:PRINTCHR$(150)P$:NEXT
8120 PRINTCHR$(18)" "C7$LEFT$(P$,39)
8130 FOR K=1 TO 13:PRINTCHR$(18)CHR$(150)" "C7$" "CB$" "SPC(34)" "C7$" ":NEXT
8140 PRINTCHR$(150)CHR$(18)" "C7$LEFT$(P$,39);
8141 FOR K=0 TO 960 STEP 40:POKE 55335+K,10:POKE 51239+K,160:NEXT
8142 POKE CY,19:PRINT
8145 FOR K=1 TO 4:PRINT:PRINTCHR$(150)LEFT$(P$,4)C2$LEFT$(P$,35)CHR$(150)" ";
8146 NEXT
8150 PRINTCHR$(19)C6$SPC(13):PRINTCHR$(18)K1$P2$K2$
8152 PRINTSPC(13):PRINTCHR$(18)CHR$(221)" SID PLAYER "CHR$(221)
8154 PRINTSPC(13):PRINTCHR$(18)K3$P2$K4$
8162 POKECY,6:PRINT:POKE CX,3
8165 PRINTCB$LEFT$(P$,7)P1$LEFT$(P$,7)
8170 FOR K=1 TO 11:PRINTSPC(3)LEFT$(P$,7)CHR$(146)MID$(P$,2,22)LEFT$(P$,7):NEXT
8175 PRINTSPC(3)LEFT$(P$,7)CHR$(146)P1$LEFT$(P$,7)
8180 POKE CY,7:PRINTC6$
8190 FOR K=0 TO 5:PRINTSPC(10)K+1;CHR$(157)") "M$(K):PRINT:NEXT:RETURN
8225 GET K$:IF K$<"1" OR K$>"6" GOTO 8225
8230 J=ASC(K$)-48:POKE CY,5+J*2:PRINT:PRINTSPC(14)CHR$(18)C2$M$(J-1)
8260 ON J GOTO 8900,8500,8450,8400,8300,5000
8300 REM
8310 IF DN=1 GOTO 8005
8312 POKE780,1:POKE781,8:POKE 782,0:SYS 65466:POKE 581,36
8314 POKE780,1:POKE781,69:POKE 782,2:SYS 65469:SYS 65472
8316 POKE581,46:POKE582,77:POKE 583,85:POKE 584,83
8318 P$=CHR$(18)+" ":REM 39 SPACES
8320 POKE CY,3:PRINT:POKE CX,15:PRINTCHR$(18)C0$"DIRECTORY:"
8330 POKE CY,6:PRINT:PRINTSPC(3)CB$CHR$(18)LEFT$(P1$,16)CHR$(187)CHR$(172);
8335 PRINTLEFT$(P1$,16)
8340 FOR K=1 TO 11:PRINTSPC(3)MID$(P$,2,16)CHR$(18)CHR$(161)CHR$(146)CHR$(161);
8345 PRINTMID$(P$,2,16):NEXT
8350 PRINTSPC(3)LEFT$(P1$,16)CHR$(18)CHR$(190)CHR$(188)CHR$(146)LEFT$(P1$,16)
8355 J=0:K=0:POKE CY,7:PRINTC0$
8360 POKE CX,18*K+3:SYS 1710:H=PEEK(251)+256*PEEK(252):IF ST<>0 GOTO 8376
8365 POKE CX,18*K+15:PRINTLEFT$(" ",-(H<100)-(H<10));H
8373 J=J+1:IF J>10 THEN J=0:POKE CY,7:PRINT:K=1-K:IF K=0 THEN K=-1:GOTO 8380
8374 GOTO 8360
8376 CLOSE 1:SYS 65484
8380 POKE 198,0:POKE CY,3:PRINT:PRINTSPC(7)CHR$(18)C0$"PRESS ANY KEY ";
8382 IF K<0 THEN PRINT"TO CONTINUE";:GOTO 8385
8383 PRINT"FOR MAIN MENU";:POKE CY,19:PRINT
8384 PRINTTAB(12)LEFT$(" ",2-(H<100)-(H<10))H"[157] BLOCKS FREE "
8385 WAIT 198,15
8387 POKE CX,7:PRINTCHR$(150)LEFT$(P$,30)
8390 IF K>=0 GOTO 8005
8395 K=0:GOTO 8330
8400 REM
8402 IF NV(1)<0 AND NV(2)<0 AND NV(3)<0 GOTO 8005
8404 FOR I=6 TO 2 STEP -2:J=NV(4-I/2)+4:GOSUB 70:POKE MM(1)-I,K
8406 POKE MM(1)-I+1,J:NEXT
8408 POKE CY,3:PRINT:PRINTTAB(10)CHR$(18)C0$" CHANGE TEXT LINES? "
8410 WAIT 198,15:GET A$:ON 1-(A$="N")-2*(A$="Y") GOTO 8410,8428,8414
8414 POKE 780,9:SYS 1596:GOSUB 8490
8418 MX=32:FA=2:FOR K=0 TO 3:POKE CY,20+K:PRINT:POKE CX,4:PRINTCHR$(18)C2$;
8420 GOSUB200:TX$(K)=A$:NEXT
8424 POKE 780,3:SYS 1596
8428 POKECY,3:PRINT:POKE CX,6:PRINTI$;:POKE CX,17:MX=12:FA=2:GOSUB200
8429 IF A$="" GOTO 8005
8430 POKE 780,1:POKE 781,DN:POKE 782,0:SYS 65466:A$=A$+".MUS"
8432 POKE 780,LH+4:FOR K=0 TO LH+3:POKE TP+K,ASC(MID$(A$,K+1)):NEXT
8434 J=TP:GOSUB70:POKE781,K:POKE 782,J:SYS 65469
8435 J=MM(1)-6:GOSUB70:POKE 251,K:POKE 252,J:POKE 780,251
8436 J=MM(1)+NV(1)+NV(2)+NV(3)+12:POKE CY,2
8438 FOR K=0 TO 3:IF TX$(K)="" GOTO 8440
8439 FOR I=1 TO LEN(TX$(K)):POKE J,ASC(MID$(TX$(K),I)):J=J+1:NEXT
8440 POKE J,13:J=J+1:NEXT:POKE J,0:J=J+1:GOSUB 70:POKE 781,K:POKE 782,J
8446 GOSUB 8495:SYS 65496:POKE 648,200:PRINT:IF PEEK(783)AND1 THEN GOSUB8600
8448 GOTO 8005
8450 REM
8452 POKECY,3:PRINT:POKE CX,6:PRINTI$;:POKE CX,17:FA=2:MX=12:GOSUB 200
8456 IF A$="" GOTO 8005
8460 A$=A$+".MUS":POKE 780,1:POKE 781,DN:POKE 782,0:SYS 65466
8462 POKE 780,LH+4:FOR K=0 TO LH+3:POKE TP+K,ASC(MID$(A$,K+1)):NEXT
8464 J=TP:GOSUB70:POKE781,K:POKE 782,J:SYS 65469:POKE CY,1
8466 POKE 780,0:J=MM(1)-6:GOSUB70:POKE 781,K:POKE 782,J:GOSUB 8495:SYS 65493
8468 POKE 648,200:PRINT: IF PEEK(783)AND1 THEN GOSUB8600:GOTO 8560
8470 FOR J=6 TO 2 STEP -2:NV(4-J/2)=PEEK(MM(1)-J)+256*PEEK(MM(1)-J+1)-4:NEXT
8474 MM(2)=MM(1)+NV(1)+4:MM(3)=MM(2)+NV(2)+4:CN(1)=0:CN(2)=0:CN(3)=0
8476 FOR K=0 TO 3:TX$(K)="":NEXT:K=0:J=MM(3)+NV(3)+4
8478 IF PEEK(J)=0 GOTO 8483
8480 IF PEEK(J)=13 THEN J=J+1:K=K+1:GOTO 8478
8482 TX$(K)=TX$(K)+CHR$(PEEK(J)):J=J+1:GOTO 8478
8483 POKE 780,9:SYS 1596
8484 GOSUB 8490:POKE CY,20:FOR K=0 TO 3:PRINTC2$:POKECX,4:PRINTCHR$(18)TX$(K);
8485 NEXT:POKE 780,3:SYS 1596
8486 FM=INT((K5-MM(3)-NV(3)-2)/2)-1:IF FM>=0 GOTO 8005
8487 POKE CY,3:PRINTC0$:POKE CX,10:PRINTCHR$(18)"INSUFFICIENT MEMORY"
8488 WAIT 198,255:GET K$:GOTO 8560
8490 POKE CY,20:FOR K=0 TO 3:PRINTC2$:POKE CX,4:PRINT CHR$(18)RIGHT$(I$,16);
8492 PRINT RIGHT$(I$,16);:NEXT:RETURN
8495 POKE648,188:PRINT "[150]":RETURN
8500 POKE CY,3:PRINT:POKE CX,10:PRINTC0$CHR$(18)" VOICE 1-3 (OR CLR) ";
8505 GET A$:IF A$="" GOTO 8505
8507 VC=VAL(A$):IF ASC(A$)=147 GOTO 8560
8510 IF VC<1ORVC>3 GOTO 8005
8519 REM
8520 IF VC=3OR(VC=2 AND NV(3)=-2)OR(VC=1 AND NV(2)=-2 AND NV(3)=-2) GOTO 8540
8530 J=MM(VC+1):GOSUB 70:POKE 251,K:POKE 252,J
8535 J=K5-NV(3)-4+(VC=1)*(NV(2)+4):GOSUB70:POKE 253,K:POKE 254,J
8537 J=NV(3)+4-(VC=1)*(NV(2)+4):GOSUB70:POKE 781,K:POKE 782,J:SYS 1024
8540 MM=MM(VC):NN=NV(VC):CN=CN(VC)
8550 POKE 53269,15:GK=1:GOTO 9000
8560 POKE 780,9:SYS 1596:GOSUB 8490
8565 POKE 780,3:SYS 1596:FOR K=1 TO 3:TX$(K)="":NV(K)=-2:CN(K)=0:NEXT:TX$(0)=""
8570 MM(2)=MM(1)+2:MM(3)=MM(1)+4:GOSUB8690
8575 FM=INT((K5-MM(1))/2)-67:GOTO 8005
8600 K=PEEK(780):POKE 780,9:SYS 1596
8605 POKE CY,3:PRINTC0$:PRINTCHR$(18);
8610 IF K=4 THEN POKE CX,13:PRINT"FILE NOT FOUND":GOTO 8620
8612 IF K=5 THEN POKE CX,11:PRINT"DEVICE NOT PRESENT":GOTO 8620
8614 POKE CX,15:PRINT"ERROR -"ST
8620 GET K$:IF K$="" GOTO 8620
8630 RETURN
8690 FOR K=1 TO 3:POKE MM(K)+NV(K)+2,1:POKE MM(K)+NV(K)+3,79:NEXT:RETURN
8900 REM PLAY OPTION
8910 FOR I=6 TO 2 STEP -2:J=NV(4-I/2)+4:GOSUB 70:POKE MM(1)-I,K
8915 POKE MM(1)-I+1,J:NEXT
8920 POKE CY,3:PRINT:POKE CX,6:PRINTCHR$(18)C0$"PLAY VOICES:";
8925 B=0:FOR K=1 TO 3:POKE CX,16+K*5:PRINTK;CHR$(157)"?"CHR$(157);
8930 GET A$:IF A$="" GOTO 8930
8935 ON 1-(A$="Y")-3*(ASC(A$)=13)-2*(A$="N") GOTO 8930,8937,8938,8939
8937 B=B+2^(K-1):PRINT" ";:NEXT:GOTO 8940
8938 PRINTCHR$(157)CHR$(157)CHR$(150)" "C0$;:NEXT:GOTO 8940
8939 POKE 198,2:POKE 631,89:POKE 632,89:GOTO 8937
8940 POKE 198,0:SYS 49435:J=MM(1)-6:GOSUB 70:POKE 781,K:POKE 782,J:SYS 49458
8945 POKE 49152,B:J=0
8950 IF PEEK(198) THEN GET K$:J=(K$="[136]"):POKE 49152,0
8955 IF NOT PEEK(56320)AND16 THEN POKE 56325,22-PEEK(678):GOTO 8960
8956 POKE 56325,SGN(15-PEEK(56320)AND15)*(132-4*PEEK(678))+66-PEEK(678)*2
8960 IF PEEK(49152)AND7 GOTO 8950
8970 SYS 49629:POKE 54276,0:POKE 54283,0:POKE 54290,0
8972 POKE 56325,66-PEEK(678)*2:IF PEEK(49152)=0 AND J=0 GOTO 8980
8974 FOR K=1 TO 3:H=PEEK(49289+K):J=PEEK(49274+K)+256*PEEK(49277+K)-MM(K)-2
8975 IF J>=-2 AND J<=NV(K)+2 GOTO 8977
8976 J=PEEK(49292+H)+256*PEEK(49304+H)-MM(K)-2:H=H-1:GOTO 8975
8977 IF (BAND2^(K-1))=0 THEN J=CN(K)
8978 CN(K)=J:CN(K)=CN(K)*-(CN(K)>=0):NEXT
8980 IF PEEK(49152)=0 GOTO 8005
8981 POKE CX,6:PRINTCHR$(18)CHR$(150)" ";
8982 POKE CX,6:PRINTCHR$(18)C2$PE$(PEEK(49152)/8-1)" ERROR";
8984 PRINT CHR$(145);:POKE CX,16:PRINT"VOICE"PEEK(49184)+1CHR$(157)":"
8986 WAIT 198,255:GET A$:GOTO 8005
9000 POKE 53280,2:POKE 1140,127:POKE 1145,1:POKE 1160,147:POKE 1165,4:SYS 1138
9002 POKE 53288,1:GOTO 9130
9004 PRINTCHR$(147);
9010 P1$=C6$+CHR$(18)+CHR$(161)+C7$
9012 P$=CHR$(162):P$=P$+P$+P$:P2$=P$+P$+P$+P$+P$:P6$=CHR$(146)
9014 P3$=C6$+P6$+CHR$(161):P4$=CHR$(192):P$=CHR$(29):P7$=CHR$(221)
9016 P5$=P1$+" "+C0$+P$+" "+P$+" "+P6$+" "+P7$+" "+CHR$(18)+" "+P$+" "+P$+" "
9017 P5$=P5$+P$+C7$+" "+P6$+C6$+CHR$(161)
9050 PRINT CHR$(146)C1$" VOICE: MEM:"
9051 P$=CHR$(183):P$=P$+P$
9052 PRINT SPC(5)C7$P$P$P$P$SPC(12)P$P$P$P$P$
9054 POKE CX,6:PRINTC1$"KEY:";:POKE CX,22:PRINT"MEASURE:"
9057 PRINT:PRINTC3$:FOR AC=-1 TO 1 STEP 2:GOSUB 8:NEXT:PRINT C1$:AC=0:GOSUB 8
9060 U1$=P4$+P4$:U1$=U1$+U1$+U1$+U1$
9100 PRINTC0$" [205] "C6$CHR$(172)P2$CHR$(187)
9102 PRINTC0$" [204] NOTE: "P1$C7$" "P3$
9104 PRINTC0$" [206][207] [204] "C6$K1$P4$P4$P4$K2$" "P5$
9106 PRINTC0$"[167][208][209][204][204][204][204][204][204][204][204][204] "C6$P7$" "C6$P7$" "P5$
9108 PRINTC0$"[167][210][211][204][204][204][204][204][204][204][204][204] "C6$K3$P4$P4$P4$K4$" "P5$
9109 P$=CHR$(163):P8$=P$+P$+P$+P$+P$
9110 PRINTC0$"[167][212][213]"P$P$P$P$P8$" "P5$
9111 P5$=" "+P7$:P5$=P5$+P5$+P5$+P5$+P5$+P5$+" ":P9$=C7$+" "+CHR$(146)
9112 P5$=C6$+CHR$(18)+CHR$(161)+P9$+C0$+P5$+CHR$(18)+P9$+C6$+CHR$(161)
9113 PRINTC0$"[167] "P$" OCTAVE: "P5$
9114 PRINTC0$"[167][214][215][204][204][204][204][204][204][204][204][204] "C6$K1$P4$K2$" "P5$
9116 PRINTC0$"[167][216][217][204][204][204][204][204][204][204][204][204] "C6$P7$" "P7$" "P1$" "P3$
9118 PRINTC0$"[218]"P8$"[204]"P8$" "C6$K3$P4$K4$" "CHR$(188)CHR$(18);
9119 PRINTP2$CHR$(146)CHR$(190)
9120 P$=P4$+P4$+P4$:P$=P$+P$+P4$
9121 PRINTC0$" [204] "C6$K1$P4$P4$K2$K1$P$K2$
9122 PRINTC0$" [204] LENGTH:"C6$P7$" "P7$P7$" "P7$
9124 PRINT" "K3$P4$P4$K4$K3$P$K4$
9126 PRINTC3$" REST <--SELECT--> TIE"
9128 PRINT:PRINT:PRINT" "CHR$(19):RETURN
9130 IF GK THEN POKE 241,PEEK(241)AND127
9132 POKE 780,16+GK:SYS 1596
9135 POKE 53250,140:POKE 53251,224:POKE53264,0
9140 FOR K=54272 TO 54295 :POKE K,0:NEXT:K=54272
9150 POKE K+3,8:POKEK+5,0:POKEK+6,247:POKEK+24,10:POKEK+16,240:POKEK+8,120
9160 PRINTCHR$(19)CHR$(146)C1$;:POKE CX,11:PRINTVC;
9170 POKE CX,29:PRINT FM
9180 POKE CY,1:PRINT:POKE CX,10
9185 PRINTABS(KY)CHR$(157)CHR$(193-2*(KY<0))" ("KY$(KY+7)")";
9190 POKE CX,30:PRINTMID$("ON OFF",4-M1*3,3)
9199 GOTO 500
9200 PRINT "[147]":PRINT " SIDPLAYER EDITOR":PRINT" BY HARRY BRATT":PRINT
9210 POKE 780,1:POKE 781,DN:POKE782,1:SYS65466
9220 A$="EDITOR.OBJ":FOR K=1 TO 10:POKE584+K,ASC(MID$(A$,K)):NEXT
9230 POKE 780,10:POKE 781,73:POKE 782,2:SYS 65469
9240 POKE 780,0:SYS 65493:IF PEEK(783)AND1 THEN PRINT " ERROR":END
40000 REM
41000 POKE 251,DN:POKE 53280,7:POKE 53265,8:K=PEEK(49)+256*PEEK(50)+4096
41010 POKE 1020,PEEK(55):POKE 1021,PEEK(56):POKE 55,KAND255:POKE 56,K/256:CLR
41012 K5=PEEK(1020)+256*PEEK(1021)
41013 K=0:J=0:I=0:H=0:JV=0:LN=3:CX=211:CY=214:AC=0:SC=3:PK=14:NN=-2:NT=0:OC=4
41014 DIM KY$(14),S$(36),SS$(36),V(16),M(16),NV(3),CN(3),MM(3),PE$(5),V$(5)
41015 DIMFW$(6,1),NU$(1,1),KL%(15)
41017 MM(1)=PEEK(55)+256*PEEK(56)+6:MM(2)=MM(1)+2:MM(3)=MM(1)+4:DN=PEEK(251)
41018 FM=INT((K5-MM(1))/2)-67:NV(1)=NN:NV(2)=NN:NV(3)=NN
41019 CN(1)=K:CN(2)=K:CN(3)=K:POKE 648,200:POKE 53272,36:Z=PEEK (56576)
41020 FOR TP=1024 TO 1137:READ J:POKE TP,J:NEXT:TP=1827
41021 POKE 251,98:POKE 252,199:POKE253,114:POKE254,4:SYS 1030
41022 POKE 781,30:POKE 782,7:SYS 1813:POKE 657,128
41023 K8=PEEK(788):K9=PEEK(789):POKE 1213,K8:POKE 1214,K9
41024 FOR K=1 TO 36:READ S$(K),SS$(K):NEXT
41025 NN(0)=0:FOR K=1 TO 10: READ SC$(K),N(K):NN(K)=NN(K-1)+N(K):NEXT
41026 C0$=CHR$(144):C1$=CHR$(5):C3$=CHR$(159):C6$=CHR$(31):C7$=CHR$(158)
41027 CB$=CHR$(154):C2$=CHR$(28)
41028 K1$=CHR$(176):K2$=CHR$(174):K3$=CHR$(173):K4$=CHR$(189)
41030 FOR K=0 TO 18:READ AC:AC$(0)=AC$(0)+CHR$(AC):NEXT:AC=0
41032 FOR K=1 TO 2:AC$(K)=LEFT$(AC$(0),9)+CHR$(193+K)+RIGHT$(AC$(0),9):NEXT
41034 FOR K=0 TO 5:READ M$(K):NEXT
41035 IF DN=1 THEN M$(4)="(NOT AVAILABLE)"
41060 GOSUB 9004:POKE 780,5:SYS 1596:GOSUB 7004:POKE 780,7:SYS 1596
41064 GOSUB 8010:POKE 780,3:SYS 1596:POKE 53280,10
41070 POKE 56578,PEEK(56578)OR3:POKE 56576,(PEEK(56576)AND252)
41080 POKE 251,0:POKE 252,208:POKE 253,0:POKE 254,208:POKE 781,0:POKE 782,8
41085 POKE 56334,PEEK(56334)AND254:POKE 1,PEEK(1)AND251:SYS 1024
41090 FOR K=0 TO 223:READ J:POKE 53768+K,J:POKE 54792+K,255-J:NEXT
41095 POKE 1,PEEK(1) OR 4:POKE 56334,PEEK(56334) OR 1
41122 FOR K=0 TO 7:READ LN$(K):NEXT K
41125 FOR K=53248 TO 53254 STEP 2:POKE K,0:NEXT:POKE 53264,0
41130 POKE 52216,48:POKE 52217,49:POKE 52218,50:POKE 52219,49:POKE 53276,11
41135 POKE 53287,7:POKE 53285,6:POKE 53289,0:POKE 53290,13
41138 POKE 53275,10:POKE 53277,10:FOR K=52224 TO 52415:POKE K,0:NEXT
41140 J=52225:POKE J,85:FOR K=1 TO 6:POKE J+K*3,105:NEXT:POKE J+21,85
41142 J=52288:FOR I=0 TO 1:FOR K=0 TO 1:POKE J+K*3+I*57,85:POKE J+K*3+I*57+1,85
41143 NEXT:NEXT:FOR K=6 TO 54 STEP 3:POKE J+K,106:POKE J+K+1,169:NEXT
41145 J=52398:POKE J,63:POKE J+3,127:POKE J+6,255:POKE J+9,254:POKE J+12,124
41147 FOR I=J-30 TO J-3 STEP 3:POKE I,1:NEXT
41160 P$=" "+CHR$(20):P$=P$+P$+P$+P$+P$:P$=P$+CHR$(17)+P$:Z$(0)=P$
41162 P$=CHR$(148)+" "+CHR$(157):P$=P$+P$+P$+P$+P$:P$=P$+CHR$(17)+P$:Z$(1)=P$
41165 Y$=CHR$(157):Y$=Y$+Y$+Y$+CHR$(17)+" "
41175 FOR K=0 TO 14:READ KY$(K)
41177 IF K<6 THEN KY$(K)=KY$(K)+"[195]"
41178 IF K>12 THEN KY$(K)=KY$(K)+"[193]"
41179 NEXT K
41180 FOR K=0 TO 6:READ AK%(K):NEXT K
41185 TY$(0)=" ":TY$(1)="[219][220]"
41196 I$=CHR$(18)+CHR$(150)+"FILENAME: "+CHR$(146)+CHR$(161)+C0$
41197 I$=I$+" "
41220 S$="QFDOFPDDPLEDNEFNADADFMKENNBFHJCGNFPF"
41225 FOR K=0 TO 16:READ V(K),M(K):NEXT
41230 FOR K=0 TO 5:READ V$(K):NEXT
41235 FOR K=0 TO 6:READ FW$(K,0),FW$(K,1):NEXT
41237 FOR K=0 TO 1:READ NU$(K,0),NU$(K,1):NEXT
41240 GOSUB50:AL=2
41250 FOR K=0 TO 5:READ PE$(K):NEXT
41350 FOR K=0 TO 15:KL%(K)=-1:NEXT
41360 FOR K=0 TO 5:READ I,J:KL%(I-8)=J:NEXT
41370 POKE 53281,1:POKE 53265,27
49999 GOSUB8690:GOTO 8005
61100 DATA 142,112,4,140,113,4,165,253,56,229,251,170,165,254,229,252,168,138
61101 DATA 205,112,4,152,237,113,4,144,35,160,0,174,113,4,240,14,177,251,145
61102 DATA 253,200,208,249,230,252,230,254,202,208,242,174,112,4,240,8,177,251
61103 DATA 145,253,200,202,208,248,96,173,113,4,168,101,252,133,252,152,24,101
61104 DATA 254,133,254,172,112,4,240,9,136,177,251,145,253,192,0,208,247,174
61105 DATA 113,4,240,16,198,252,198,254,136,177,251,145,253,192,0,208,247,202
61106 DATA 208,240,96,177,2
61150 DATA TEM,SET,UTL,UTILITY SET,VOL,SET,BMP,BUMP
61151 DATA HED,HEAD,TAL,TAIL,CAL,CALL,DEF,DEFINE,END,END
61152 DATA F-M,MODE,AUT,AUTO,RES,RESONANCE,FLT,THROUGH,F-S,SWEEP,F-C,CUTOFF
61153 DATA F-X,EXTERNAL,ATK,ATTACK,DCY,DECAY,SUS,SUSTAIN,RLS,RELEASE
61154 DATA PNT,R POINT,WAV,SET,P-W,P WIDTH,P-S,P SWEEP,SNC,SYNC,RNG,RING MOD
61155 DATA VDP,VIB DEPTH,VRT,VIB RATE,POR,PORTAMENTO,DTN,DETUNE,TPS,TRANSPOSE
61156 DATA MS#,MEASURE #,3-O,VOICE 3 OFF,FLG,FLAG,HLT,HALT,AUX,AUXILIARY
61157 DATA TEMPO,2,VOLUME,2,REPEAT,2,PHRASE,3,FILTER,3,FILTER,4,ENVELOPE,5
61158 DATA WAVEFORM,5,FREQ,5,MISC,5
61190 DATA 162,162,162,18,17,157,157,157,32,193,32,146,17,157,157,157
61192 DATA 183,183,183
61194 DATA PLAY MUSIC,EDIT MUSIC,LOAD MUSIC FILE,SAVE MUSIC FILE,DISK DIRECTORY
61195 DATA QUIT
61200 REM
61201 DATA 108,254,108,254,108,0,0,0,96,124,108,108,124,12,0,0
61202 DATA 192,192,240,216,240,0,0,0
61203 DATA 30,27,30,27,30,123,248,240,30,27,30,27,24,120,248,240
61204 DATA 30,27,24,24,24,120,248,240
61205 DATA 24,24,24,24,24,120,248,240,12,12,12,12,12,124,204,248
61206 DATA 0,0,0,0,120,204,204,120,0,0,99,99,99,99,110,0
61207 DATA 0,24,60,102,126,102,102,102
61208 DATA 255,0,0,0,255,0,0,0,0,0,0,0,255,0,0,0
61209 DATA 0,0,0,7,12,24,24,24,0,0,0,128,192,192,192,192
61210 DATA 255,13,15,6,255,14,27,27,255,128,0,0,255,0,0,0
61211 DATA 255,49,55,55,255,54,24,12,255,224,176,152,255,216,216,240
61212 DATA 255,0,24,25,15,0,0,0,255,96,96,192,0,0,0,0
61213 DATA 255,48,96,112,255,112,0,0,255,96,51,51,255,48,51,99
61214 DATA 255,0,1,3,255,28,112,0,255,192,128,0,255,0,0,0,3,0,0,0,0,0,0,0
61215 DATA 96,96,48,48,28,15,3,0,6,6,12,12,56,240,192,0
61300 DATA 32ND ,16TH ,EIGHTH ,QUARTER,HALF ,WHOLE ,UTILITY,ABS SET
61306 DATA C,G,D,A,E,B,F ,C ,G ,D ,A ,E ,B ,F,C
61310 DATA 3,0,4,1,5,2,6
61450 DATA 15,8,127,256,-95,256,15,16,-127,256,255,256,999,64,16383,4,2047,32
61452 DATA -2047,16,4095,16,7,32,7,32,1,8,1,8,0,0,900,256
61454 DATA 1=L 2=B 4=H,0=N 1=T 2=S 4=P,( 0=NO / 1=YES ),( 0=UP / 1=DOWN)
61456 DATA ( 0=YES ),( 56 TO 900 )
61458 DATA L,T,B,S,LB,TS,H,P,LH,TP,BH,SP,LBH,TSP,NO,UP,YES,DWN
61460 DATA CLOBBER,ILLEGAL DURATION,DURATION OVERFLOW,STACK UNDERFLOW
61462 DATA STACK OVERFLOW,UNDEFINED PHRASE CALL
61470 DATA 20,0,19,1,17,3,8,4,23,5,21,6